<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>JSON响应</title>
    <style>
      .box {
        width: 200px;
        height: 100px;
        border: 1px solid #89b;
      }
    </style>
  </head>
  <body>
    <div class="box"></div>

    <script>
      const box = document.querySelector('.box')

      window.addEventListener('keydown', function () {
        // 1.创建对象
        const xhr = new XMLHttpRequest()

        // 设置响应体数据的类型
        xhr.responseType = 'json'

        // 2.设置请求方法和 url
        xhr.open('GET', 'http://localhost:9000/json-server')

        // 3.发送
        xhr.send()

        // 4.处理服务器端返回的结果
        xhr.onreadystatechange = function () {
          if (xhr.readyState === 4 && xhr.status === 200) {
            // box.innerHTML = xhr.response
            // 返回的结果是 JSON 格式的字符串，手动把数据转换为对象
            // let obj = JSON.parse(xhr.response)
            // box.innerHTML = '姓名是：' + obj.name
            // 自动转换(先设置响应体数据的类型)
            box.innerHTML = `姓名：${xhr.response.name} 年龄：${xhr.response.age}`
          }
        }
      })
    </script>
  </body>
</html>
